package com.ruoyi.vote.common.strategy;

import com.ruoyi.common.exception.vote.VoteException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.vote.admin.domain.VoteActivity;

/**
 *  报名阶段校验
 *   抛出错误 :  报名开始时间 > 当前时间 > 报名开始
 */
public class SignCheck implements ActivityCheckStrategy {
    @Override
    public void check(VoteActivity activity) throws VoteException {
        if (!DateUtils.isInTimeInterval(activity.getSignStartTime(),activity.getSignStopTime())) {
            // 当前时间不在投票开始时间和结束时间内，不允许报名
            throw new VoteException("vote.activity.check.sign.time");
        }
        // 其他报名阶段的校验逻辑...
    }
}
